iT邦幫忙

2021 iThome 鐵人賽

DAY 19
0
Software Development

PHP 語法通關系列 第 19

Day19 PHP的常用函數-4:文件處理函數、Json

  • 分享至 

  • xImage
  •  

文件處理函數

fopen(): 打開文件或者 URL
fclose(): 關閉一個已打開的文件指針
filesize(): 取得文件大小
is_readable(): 判斷給定文件是否可讀
is_writable(): 判斷給定文件是否可寫
is_executable(): 判斷給定文件是否可執行
filectime(): 獲取文件的創建時間
filemtime(): 獲取文件的修改時間
fwrite(): 寫入文件
fread(): 讀取文件
file(): 把整個文件讀入一個數組中
readdir(): 從目錄句柄中讀取條目
closedir(): 關閉目錄句柄
rmdir(): 刪除目錄
unlink(): 刪除文件
copy(): 拷貝文件
rename(): 重命名一個文件或目錄
file_exists($file):文件是否存在,(true/false)
is_executable($file):是否可執行(返回bool)
filectime($file):文件創建時間(時間戳)
filemtime($file):文件修改時間(時間戳)
fileatime($file):文件訪問時間(時間戳)
stat($file):返回文件的大部分信息(文件信息數組)

以下一些例子

<?php

/*與文件相關的函數*/
//    - 創建文件
$res = touch('./abc.txt');
var_dump($res);
//    - 移動文件 重命名
$res = rename('./abc.txt', './b.txt');
var_dump($res);
$res = rename('./b.txt', '../b.txt');
var_dump($res);
rename('../b.txt', './abc.txt');
//    - 刪除文件
$res = unlink('./abc.txt');
var_dump($res);
//    - 複製文件
$res = copy('./abc.txt', '../abc.txt');
var_dump($res);
//    - 獲取文件大小
$filesize = filesize('./abc.txt');
var_dump($filesize);
//    - 判斷是否是文件
$result = is_file('./abc.txt');
var_dump($result);
$result = is_file('./xxyd');
var_dump($result);
//    - 判斷文件或者目錄是否存在
$result = file_exists('./aabc.txt');
var_dump($result);
$result = file_exists('./lmonkey');
var_dump($result);
/***********************************************/
//判斷文件是否存在,存在則刪除
if (file_exists('./b.txt')) {
    unlink('./b.txt');
}
//    - 文件是否可執行
//    - 文件是否可讀
$result = is_readable('./abc.txt');
var_dump($result);
//    - 文件是否可寫
$result = is_writable('./abc.txt');
var_dump($result);
//    - 獲取文件的創建時間
$time = filectime('./abc.txt');
var_dump($time);
var_dump(date('Y-m-d H:i:s', $time));
//    - 獲取文件的修改時間
$time = filemtime('./abc.txt');
var_dump($time);
var_dump(date('Y-m-d H:i:s', $time));
//    - 獲取文件上次訪問時間
$time = fileatime('./abc.txt');
var_dump($time);
var_dump(date('Y-m-d H:i:s', $time));
  • 一個文件的流程
<?php

/**********打開文件   寫入文件   關閉文件*************/

//1.打開文件
//寫入文件方式:如果文件不存在會創建,如果文件存在會清空文件後再次寫入
$file = fopen('./a.txt', 'w');
//2.寫入文件
//$int = fwrite($file,'此次疫情,有好多生活需要調整!');
// var_dump($int);
fwrite($file, '你說得沒錯!');
//3.關閉文件
fclose($file);

或是可以寫這樣

/**********寫入文件操作之一步到位****/

// $int = file_put_contents('./winnie.txt','今天我很開心');
// var_dump($int);

// $int = file_put_contents('./winnie.txt','可以出去趴趴走');
// var_dump($int);
//相當於 以w方式打開文件
//然後寫入文件,關閉文件

//覆蓋方式寫入
$int = file_put_contents('./winnie.txt'', 'BBBBBear', FILE_APPEND);
var_dump($int);

JSON

  • json_encode($data):對變量進行 json 編碼
  • json_decode($data):對 json 格式的字符串進行解碼
  • json_last_error():返回最後一次發生的錯誤

上一篇
Day18 PHP的常用函數3:時間函數
下一篇
Day20 類別與物件介紹
系列文
PHP 語法通關30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言